package com.john.booter.module.role.service;

import java.util.List;

import com.john.booter.domain.entity.Role;
import com.john.booter.pagination.DataTable;
import com.john.booter.pagination.Pager;

public interface RoleService {
	
	void add(Role r);
	void delete(String code);
	void batchDelete(List<String> codes);
	void update(Role r);
	List<Role> findAll();
	Role findByCode(String code);
	DataTable<Role> findDataTable(Pager pg, String name);
	/**
	 * 更新角色的操作URL
	 * @param roleCode 角色编码
	 * @param optionCodes 操作编码，多个以“,”分隔
	 */
	void updateRoleOptions(String roleCode, String optionCodes);
	/**
	 * 权限树
	 * @param roleCode
	 * @return
	 */
	String getRoleOptionsTree(String roleCode);
	
}
